作者:xuanchen | 来源:互联网 | 2023-06-06 17:04
篇首语:本文由编程笔记#小编为大家整理,主要介绍了[Spring5]IOC容器_Bean管理XML方式_注入集合类型属性相关的知识,希望对你有一定的参考价值。 xml注入集合属性 1.注入数组类型属性
篇首语:本文由编程笔记#小编为大家整理,主要介绍了[Spring5]IOC容器_Bean管理XML方式_注入集合类型属性相关的知识,希望对你有一定的参考价值。
xml注入集合属性
1.注入数组类型属性
2.注入List集合类型属性
3.注入Map集合类型属性
(1)创建类,定义数组,list,map,set类型属性,生成对应set方法
package com.atguigu.collectiontype;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class Stu
private String[] courses;
private List<String> list;
private Map<String,String> maps;
private Set<String> sets;
public void setSets(Set<String> sets)
this.sets &#61; sets;
public void setList(List<String> list)
this.list &#61; list;
public void setMaps(Map<String, String> maps)
this.maps &#61; maps;
public void setCourses(String[] courses)
this.courses &#61; courses;
public void test()
System.out.println(Arrays.toString(courses));
System.out.println(list);
System.out.println(maps);
System.out.println(sets);
&#xff08;2&#xff09;在spring配置文件中进行配置
<beans xmlns&#61;"http://www.springframework.org/schema/beans"
xmlns:xsi&#61;"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation&#61;"http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<property name&#61;"courses">
<array>
<value>java课程value>
<value>数据库课程value>
array>
property>
<property name&#61;"list">
<list>
<value>张三value>
<value>小三value>
list>
property>
<property name&#61;"maps">
<map>
entry>
php" value&#61;"php">
entry>
map>
property>
<property name&#61;"sets">
<set>
<value>mysqlvalue>
<value>Redisvalue>
set>
property>
bean>
beans>
package com.atguigu.test;
import com.atguigu.collectiontype.Stu;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class testCollection
&#64;Test
public void testCollection()
ApplicationContext context &#61; new ClassPathXmlApplicationContext("bean5.xml");
Stu stu &#61; context.getBean("stu", Stu.class);
stu.test();
在集合里面设置对象类型值
package com.atguigu.collectiontype;
public class Course
private String cname;
public void setCname(String cname)
this.cname &#61; cname;
&#64;Override
public String toString()
return "Course" &#43;
"cname&#61;&#39;" &#43; cname &#43; &#39;\\&#39;&#39; &#43;
&#39;&#39;;
package com.atguigu.collectiontype;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class Stu
private String[] courses;
private List<String> list;
private Map<String,String> maps;
private Set<String> sets;
private List<Course> courseList;
public void setCourseList(List<Course> courseList)
this.courseList &#61; courseList;
public void setSets(Set<String> sets)
this.sets &#61; sets;
public void setList(List<String> list)
this.list &#61; list;
public void setMaps(Map<String, String> maps)
this.maps &#61; maps;
public void setCourses(String[] courses)
this.courses &#61; courses;
public void test()
System.out.println(Arrays.toString(courses));
System.out.println(list);
System.out.println(maps);
System.out.println(sets);
System.out.println(courseList);
<beans xmlns&#61;"http://www.springframework.org/schema/beans"
xmlns:xsi&#61;"http://www.w3.org/2001/XMLSchema-instance" xmlns:util&#61;"http://www.springframework.org/schema/util"
xsi:schemaLocation&#61;"http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/util https://www.springframework.org/schema/util/spring-util.xsd">
<property name&#61;"courses">
<array>
<value>java课程value>
<value>数据库课程value>
array>
property>
<property name&#61;"list">
<list>
<value>张三value>
<value>小三value>
list>
property>
<property name&#61;"maps">
<map>
entry>
entry>
map>
property>
<property name&#61;"sets">
<set>
<value>MySQLvalue>
<value>Redisvalue>
set>
property>
<property name&#61;"courseList">
<list>
<ref bean&#61;"course1">ref>
[ref>]
list>
property>
bean>
<property name&#61;"cname" value&#61;"Spring5框架">
property>
bean>
<property name&#61;"cname" value&#61;"MySql5框架">
property>
bean>
beans>
测试&#xff1a;
package com.atguigu.test;
import com.atguigu.collectiontype.Stu;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class testCollection
&#64;Test
public void testCollection()
ApplicationContext context &#61; new ClassPathXmlApplicationContext("bean5.xml");
Stu stu &#61; context.getBean("stu", Stu.class);
stu.test();
把集合注入部分提取出来
&#xff08;1&#xff09;在spring配置文件中引入名称空间util
<beans xmlns&#61;"http://www.springframework.org/schema/beans"
xmlns:xsi&#61;"http://www.w3.org/2001/XMLSchema-instance"
xmlns:util&#61;"http://www.springframework.org/schema/util"
xsi:schemaLocation&#61;"http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
beans>
&#xff08;2&#xff09;使用util标签完成list集合注入提取
package com.atguigu.spring.collectiontype;
import java.util.List;
public class Book
private List<String> list;
public void setList(List<String> list)
this.list &#61; list;
public void test()
System.out.println(list);
<beans xmlns&#61;"http://www.springframework.org/schema/beans"
xmlns:xsi&#61;"http://www.w3.org/2001/XMLSchema-instance"
xmlns:util&#61;"http://www.springframework.org/schema/util"
xsi:schemaLocation&#61;"http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
<value>易筋经value>
<value>九阴真经value>
<value>九阳神功value>
util:list>
property>
bean>
beans>
测试&#xff1a;
package com.atguigu.spring.test;
import com.atguigu.spring.collectiontype.Book;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class testBook
&#64;Test
public void testCollection()
ApplicationContext context &#61; new ClassPathXmlApplicationContext("bean1.xml");
Book book &#61; context.getBean("book", Book.class);
book.test();